/*
 * ER/Studio 8.0 SQL Code Generation
 * Company :      sireass
 * Project :      SIREASS - Diagrama ER.dm1
 * Author :       sireass team
 *
 * Date Created : Sunday, October 27, 2013 11:33:21
 
   Actualización: 23 Abril 2013
      - campos text en Tbl_Informe se cambiaron a varchar(1000)
      - campos text en Tbl_Actividad_Informe se cambiaron a varchar(1000)
   Actualización: 26 Abril 2013
      - campo Cat_Estatus_Informe.cEstatus_Informe de varchar(30) a 35
   Actualización: 28 Abril 2013
      - campo Cat_Perfil_Usuario.nId_Perfil_Usuario de char(10) a bigint
   Actualización: 01 Mayo 2013
      - creación de la tabla Cat_TipoPersona
      - se modificó la tabla Tbl_Administrativo en lo siguiente:
        - se agregó el campo nId_TipoPersona 
		- se agregó la FK_TblAdministrativo_CatTipoPersona para el campo nId_TipoPersona 
	    - se quitó el campo cCURP
	  - se agregó cCURP a Tbl_Persona
   Actualización: 02 Mayo 2013
      - se amplió el campo Cat_Actividad_Macro.cActividad_Macro de varchar(100) a (1000)
   Actualización: 27 Octubre 2013
      - Se agregó como FK el campo nId_Programa de la tabla Cat_Programa a la tabla Cat_Proyecto
   Actualización: 30 Octubre 2013
	  - Se agregó como FK el campo nId_Proyecto en la tabla Tbl_Asignacion ya que por error
	  se había eliminado en la actualización anterior.
 * Target DBMS : Microsoft SQL Server 2008
 */

 
USE master
go

/*
use master
go
drop database sireass_db;
go
*/

IF NOT EXISTS (SELECT name FROM sys.databases WHERE name = N'sireass_db')
BEGIN	
	PRINT('Creando base de datos...')
	CREATE DATABASE sireass_db
	ON (NAME='sireass_db', FILENAME='c:\Archivos de programa\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\sireass_db.mdf', SIZE=3)
	LOG ON (NAME='sireass_db_log', FILENAME='c:\Archivos de programa\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\sireass_db_log.ldf', SIZE=1)
	PRINT('Base de datos sireass_db creada.')
END

go
USE sireass_db
go
IF OBJECT_ID('dbo.FK_CatActividadMacroProyecto_CatProyectoCarrera') IS NOT NULL
ALTER TABLE Cat_ActividadMacro
DROP CONSTRAINT FK_CatActividadMacroProyecto_CatProyectoCarrera
go

IF OBJECT_ID('FK_CatPerfilServicio_CatPerfil') IS NOT NULL
ALTER TABLE Cat_Perfil_Servicio
DROP CONSTRAINT FK_CatPerfilServicio_CatPerfil
go

IF OBJECT_ID('FK_CatPerfilServicio_CatServicio') IS NOT NULL
ALTER TABLE Cat_Perfil_Servicio
DROP CONSTRAINT FK_CatPerfilServicio_CatServicio
go

IF OBJECT_ID('FK_CatPerfilUsuario_CatPerfil') IS NOT NULL
ALTER TABLE Cat_Perfil_Usuario
DROP CONSTRAINT FK_CatPerfilUsuario_CatPerfil
go

IF OBJECT_ID('FK_CatPerfilUsuario_TblUsuario') IS NOT NULL
ALTER TABLE Cat_Perfil_Usuario
DROP CONSTRAINT FK_CatPerfilUsuario_TblUsuario
go

IF OBJECT_ID('FK_CatProcesoInforme_FINAL_CatEstatusInforme') IS NOT NULL
ALTER TABLE Cat_Proceso_Informe
DROP CONSTRAINT FK_CatProcesoInforme_FINAL_CatEstatusInforme
go

IF OBJECT_ID('FK_CatProcesoInforme_INICIO_CatEstatusInforme') IS NOT NULL
ALTER TABLE Cat_Proceso_Informe
DROP CONSTRAINT FK_CatProcesoInforme_INICIO_CatEstatusInforme
go

IF OBJECT_ID('dbo.FK_CatPrograma_CatEscuela') IS NOT NULL
ALTER TABLE Cat_Programa
DROP CONSTRAINT FK_CatPrograma_CatEscuela
go

IF OBJECT_ID('dbo.FK_CatProyecto_CatPrograma') IS NOT NULL
ALTER TABLE Cat_Proyecto
DROP CONSTRAINT FK_CatProyecto_CatPrograma
go

IF OBJECT_ID('dbo.FK_CatProyecto_CatUnidadResponsable') IS NOT NULL
ALTER TABLE Cat_Proyecto
DROP CONSTRAINT FK_CatProyecto_CatUnidadResponsable
go

IF OBJECT_ID('dbo.FK_CatProyecto_TblPersona') IS NOT NULL
ALTER TABLE Cat_Proyecto
DROP CONSTRAINT FK_CatProyecto_TblPersona
go

IF OBJECT_ID('dbo.FK_CatProyectoCarrera_CatCarrera') IS NOT NULL
ALTER TABLE Cat_Proyecto_Carrera
DROP CONSTRAINT FK_CatProyectoCarrera_CatCarrera
go

IF OBJECT_ID('dbo.FK_CatProyectoCarrera_CatProyecto') IS NOT NULL
ALTER TABLE Cat_Proyecto_Carrera
DROP CONSTRAINT FK_CatProyectoCarrera_CatProyecto
go

IF OBJECT_ID('dbo.FK_CatProyectoEncargado_CatProyecto') IS NOT NULL
ALTER TABLE Cat_Proyecto_Encargado
DROP CONSTRAINT FK_CatProyectoEncargado_CatProyecto
go

IF OBJECT_ID('dbo.FK_CatProyectoEncargado_TblPersona') IS NOT NULL
ALTER TABLE Cat_Proyecto_Encargado
DROP CONSTRAINT FK_CatProyectoEncargado_TblPersona
go

IF OBJECT_ID('FK_CatResponsableUnidad_CatUnidadResponsable') IS NOT NULL
ALTER TABLE Cat_Responsable_Unidad
DROP CONSTRAINT FK_CatResponsableUnidad_CatUnidadResponsable
go

IF OBJECT_ID('FK_CatResponsableUnidad_TblAdministrativo') IS NOT NULL
ALTER TABLE Cat_Responsable_Unidad
DROP CONSTRAINT FK_CatResponsableUnidad_TblAdministrativo
go

IF OBJECT_ID('dbo.FK_CatUnidadResponsable_CatCargo') IS NOT NULL
ALTER TABLE Cat_UnidadResponsable
DROP CONSTRAINT FK_CatUnidadResponsable_CatCargo
go

IF OBJECT_ID('dbo.FK_CatUnidadResponsable_CatEscuela') IS NOT NULL
ALTER TABLE Cat_UnidadResponsable
DROP CONSTRAINT FK_CatUnidadResponsable_CatEscuela
go

IF OBJECT_ID('dbo.FK_TblActividadAsignacion_TblAsignacion') IS NOT NULL
ALTER TABLE Tbl_Actividad_Asignacion
DROP CONSTRAINT FK_TblActividadAsignacion_TblAsignacion
go

IF OBJECT_ID('dbo.FK_TblActividadInforme_CatTipoActividad') IS NOT NULL
ALTER TABLE Tbl_Actividad_Informe
DROP CONSTRAINT FK_TblActividadInforme_CatTipoActividad
go

IF OBJECT_ID('dbo.FK_TblActividadInforme_TblInforme') IS NOT NULL
ALTER TABLE Tbl_Actividad_Informe
DROP CONSTRAINT FK_TblActividadInforme_TblInforme
go

IF OBJECT_ID('dbo.FK_TblAdministrativo_CatTipoPersona') IS NOT NULL
ALTER TABLE Tbl_Administrativo
DROP CONSTRAINT FK_TblAdministrativo_CatTipoPersona
go

IF OBJECT_ID('dbo.FK_TblAdministrativo_CatTitulo') IS NOT NULL
ALTER TABLE Tbl_Administrativo
DROP CONSTRAINT FK_TblAdministrativo_CatTitulo
go

IF OBJECT_ID('dbo.FK_TblAdministrativo_CatUnidadResponsable') IS NOT NULL
ALTER TABLE Tbl_Administrativo
DROP CONSTRAINT FK_TblAdministrativo_CatUnidadResponsable
go

IF OBJECT_ID('dbo.FK_TblAdministrativo_TblPersona') IS NOT NULL
ALTER TABLE Tbl_Administrativo
DROP CONSTRAINT FK_TblAdministrativo_TblPersona
go

IF OBJECT_ID('dbo.FK_Tbl_Asignacion_CatEstatusAsignacion') IS NOT NULL
ALTER TABLE Tbl_Asignacion
DROP CONSTRAINT FK_Tbl_Asignacion_CatEstatusAsignacion
go

IF OBJECT_ID('dbo.FK_TblAsignacion_CatProyecto') IS NOT NULL
ALTER TABLE Tbl_Asignacion
DROP CONSTRAINT FK_TblAsignacion_CatProyecto
go

IF OBJECT_ID('dbo.FK_TblAsignacion_CatProyectoEncargado') IS NOT NULL
ALTER TABLE Tbl_Asignacion
DROP CONSTRAINT FK_TblAsignacion_CatProyectoEncargado
go

IF OBJECT_ID('dbo.FK_TblAsignacion_TblPrestador') IS NOT NULL
ALTER TABLE Tbl_Asignacion
DROP CONSTRAINT FK_TblAsignacion_TblPrestador
go

IF OBJECT_ID('dbo.FK_TblInforme_CatEstatusInforme') IS NOT NULL
ALTER TABLE Tbl_Informe
DROP CONSTRAINT FK_TblInforme_CatEstatusInforme
go

IF OBJECT_ID('dbo.FK_TblInforme_TblAsignacion') IS NOT NULL
ALTER TABLE Tbl_Informe
DROP CONSTRAINT FK_TblInforme_TblAsignacion
go

IF OBJECT_ID('FK_TblObservacionInforme_TblInforme') IS NOT NULL
ALTER TABLE Tbl_Observacion_Informe
DROP CONSTRAINT FK_TblObservacionInforme_TblInforme
go

IF OBJECT_ID('dbo.FK_TblPersona_CatSexo') IS NOT NULL
ALTER TABLE Tbl_Persona
DROP CONSTRAINT FK_TblPersona_CatSexo
go

IF OBJECT_ID('dbo.FK_TblPrestador_CatCarrera') IS NOT NULL
ALTER TABLE Tbl_Prestador
DROP CONSTRAINT FK_TblPrestador_CatCarrera
go

IF OBJECT_ID('dbo.FK_TblPrestador_CatEscuela') IS NOT NULL
ALTER TABLE Tbl_Prestador
DROP CONSTRAINT FK_TblPrestador_CatEscuela
go

IF OBJECT_ID('dbo.FK_TblPrestador_CatEstatusPrestador') IS NOT NULL
ALTER TABLE Tbl_Prestador
DROP CONSTRAINT FK_TblPrestador_CatEstatusPrestador
go

IF OBJECT_ID('dbo.FK_TblPrestador_TblPersona') IS NOT NULL
ALTER TABLE Tbl_Prestador
DROP CONSTRAINT FK_TblPrestador_TblPersona
go

IF OBJECT_ID('dbo.FK_TblUsuario_TblPersona') IS NOT NULL
ALTER TABLE Tbl_Usuario
DROP CONSTRAINT FK_TblUsuario_TblPersona
go

IF OBJECT_ID('Tbl_Observacion_Informe') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Observacion_Informe
    PRINT '<<< DROPPED TABLE Tbl_Observacion_Informe >>>'
END
go
IF OBJECT_ID('Tbl_Actividad_Informe') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Actividad_Informe
    PRINT '<<< DROPPED TABLE Tbl_Actividad_Informe >>>'
END
go
IF OBJECT_ID('Tbl_Informe') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Informe
    PRINT '<<< DROPPED TABLE Tbl_Informe >>>'
END
go
IF OBJECT_ID('Tbl_Actividad_Asignacion') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Actividad_Asignacion
    PRINT '<<< DROPPED TABLE Tbl_Actividad_Asignacion >>>'
END
go
IF OBJECT_ID('Tbl_Asignacion') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Asignacion
    PRINT '<<< DROPPED TABLE Tbl_Asignacion >>>'
END
go
IF OBJECT_ID('Tbl_Prestador') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Prestador
    PRINT '<<< DROPPED TABLE Tbl_Prestador >>>'
END
go
IF OBJECT_ID('Cat_TipoActividad') IS NOT NULL
BEGIN
    DROP TABLE Cat_TipoActividad
    PRINT '<<< DROPPED TABLE Cat_TipoActividad >>>'
END
go
IF OBJECT_ID('Cat_Responsable_Unidad') IS NOT NULL
BEGIN
    DROP TABLE Cat_Responsable_Unidad
    PRINT '<<< DROPPED TABLE Cat_Responsable_Unidad >>>'
END
go
IF OBJECT_ID('Tbl_Administrativo') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Administrativo
    PRINT '<<< DROPPED TABLE Tbl_Administrativo >>>'
END
go
IF OBJECT_ID('Cat_Titulo') IS NOT NULL
BEGIN
    DROP TABLE Cat_Titulo
    PRINT '<<< DROPPED TABLE Cat_Titulo >>>'
END
go
IF OBJECT_ID('Cat_TipoPersona') IS NOT NULL
BEGIN
    DROP TABLE Cat_TipoPersona
    PRINT '<<< DROPPED TABLE Cat_TipoPersona >>>'
END
go
IF OBJECT_ID('Cat_Proyecto_Encargado') IS NOT NULL
BEGIN
    DROP TABLE Cat_Proyecto_Encargado
    PRINT '<<< DROPPED TABLE Cat_Proyecto_Encargado >>>'
END
go
IF OBJECT_ID('Cat_Proceso_Informe') IS NOT NULL
BEGIN
    DROP TABLE Cat_Proceso_Informe
    PRINT '<<< DROPPED TABLE Cat_Proceso_Informe >>>'
END
go
IF OBJECT_ID('Cat_Perfil_Usuario') IS NOT NULL
BEGIN
    DROP TABLE Cat_Perfil_Usuario
    PRINT '<<< DROPPED TABLE Cat_Perfil_Usuario >>>'
END
go
IF OBJECT_ID('Tbl_Usuario') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Usuario
    PRINT '<<< DROPPED TABLE Tbl_Usuario >>>'
END
go
IF OBJECT_ID('Cat_Perfil_Servicio') IS NOT NULL
BEGIN
    DROP TABLE Cat_Perfil_Servicio
    PRINT '<<< DROPPED TABLE Cat_Perfil_Servicio >>>'
END
go
IF OBJECT_ID('Cat_Servicio') IS NOT NULL
BEGIN
    DROP TABLE Cat_Servicio
    PRINT '<<< DROPPED TABLE Cat_Servicio >>>'
END
go
IF OBJECT_ID('Cat_Perfil') IS NOT NULL
BEGIN
    DROP TABLE Cat_Perfil
    PRINT '<<< DROPPED TABLE Cat_Perfil >>>'
END
go
IF OBJECT_ID('Cat_Estatus_Prestador') IS NOT NULL
BEGIN
    DROP TABLE Cat_Estatus_Prestador
    PRINT '<<< DROPPED TABLE Cat_Estatus_Prestador >>>'
END
go
IF OBJECT_ID('Cat_Estatus_Informe') IS NOT NULL
BEGIN
    DROP TABLE Cat_Estatus_Informe
    PRINT '<<< DROPPED TABLE Cat_Estatus_Informe >>>'
END
go
IF OBJECT_ID('Cat_Estatus_Asignacion') IS NOT NULL
BEGIN
    DROP TABLE Cat_Estatus_Asignacion
    PRINT '<<< DROPPED TABLE Cat_Estatus_Asignacion >>>'
END
go
IF OBJECT_ID('Cat_ActividadMacro') IS NOT NULL
BEGIN
    DROP TABLE Cat_ActividadMacro
    PRINT '<<< DROPPED TABLE Cat_ActividadMacro >>>'
END
go
IF OBJECT_ID('Cat_Proyecto_Carrera') IS NOT NULL
BEGIN
    DROP TABLE Cat_Proyecto_Carrera
    PRINT '<<< DROPPED TABLE Cat_Proyecto_Carrera >>>'
END
go
IF OBJECT_ID('Cat_Proyecto') IS NOT NULL
BEGIN
    DROP TABLE Cat_Proyecto
    PRINT '<<< DROPPED TABLE Cat_Proyecto >>>'
END
go
IF OBJECT_ID('Tbl_Persona') IS NOT NULL
BEGIN
    DROP TABLE Tbl_Persona
    PRINT '<<< DROPPED TABLE Tbl_Persona >>>'
END
go
IF OBJECT_ID('Cat_Sexo') IS NOT NULL
BEGIN
    DROP TABLE Cat_Sexo
    PRINT '<<< DROPPED TABLE Cat_Sexo >>>'
END
go
IF OBJECT_ID('Cat_UnidadResponsable') IS NOT NULL
BEGIN
    DROP TABLE Cat_UnidadResponsable
    PRINT '<<< DROPPED TABLE Cat_UnidadResponsable >>>'
END
go
IF OBJECT_ID('Cat_Cargo') IS NOT NULL
BEGIN
    DROP TABLE Cat_Cargo
    PRINT '<<< DROPPED TABLE Cat_Cargo >>>'
END
go
IF OBJECT_ID('Cat_Programa') IS NOT NULL
BEGIN
    DROP TABLE Cat_Programa
    PRINT '<<< DROPPED TABLE Cat_Programa >>>'
END
go
IF OBJECT_ID('Cat_Escuela') IS NOT NULL
BEGIN
    DROP TABLE Cat_Escuela
    PRINT '<<< DROPPED TABLE Cat_Escuela >>>'
END
go
IF OBJECT_ID('Cat_Carrera') IS NOT NULL
BEGIN
    DROP TABLE Cat_Carrera
    PRINT '<<< DROPPED TABLE Cat_Carrera >>>'
END
go
/* 
 * USER: sireass_usr 
 */

exec sp_grantdbaccess 'sireass_usr', 'sireass_usr'
go

/* 
 * TABLE: Cat_Carrera 
 */

CREATE TABLE Cat_Carrera(
    nId_Carrera    bigint          NOT NULL,
    cCarrera       varchar(100)    NOT NULL,
    bHabilitado    bit             NOT NULL,
    dFecha_Alta    datetime2(7)    NOT NULL,
    dFecha_Baja    datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Carrera PRIMARY KEY CLUSTERED (nId_Carrera)
)
go



IF OBJECT_ID('Cat_Carrera') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Carrera >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Carrera >>>'
go

/* 
 * TABLE: Cat_Escuela 
 */

CREATE TABLE Cat_Escuela(
    nId_Escuela    bigint          NOT NULL,
    cEscuela       varchar(100)    NOT NULL,
    bHabilitado    bit             NOT NULL,
    dFecha_Alta    datetime2(7)    NOT NULL,
    dFecha_Baja    datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Escuela PRIMARY KEY CLUSTERED (nId_Escuela)
)
go



IF OBJECT_ID('Cat_Escuela') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Escuela >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Escuela >>>'
go

/* 
 * TABLE: Cat_Programa 
 */

CREATE TABLE Cat_Programa(
    nId_Programa              bigint          NOT NULL,
    nId_Escuela               bigint          NOT NULL,
    cPrograma                 varchar(120)    NOT NULL,
    cClave_Programa           varchar(15)     NOT NULL,
    dFecha_Inicio_Vigencia    datetime2(7)    NOT NULL,
    dFechaFin_Vigencia        datetime2(7)    NOT NULL,
    bHabilitado               bit             NOT NULL,
    dFecha_Alta               datetime2(7)    NOT NULL,
    dFecha_Baja               datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Programa PRIMARY KEY CLUSTERED (nId_Programa), 
    CONSTRAINT FK_CatPrograma_CatEscuela FOREIGN KEY (nId_Escuela)
    REFERENCES Cat_Escuela(nId_Escuela)
)
go



IF OBJECT_ID('Cat_Programa') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Programa >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Programa >>>'
go

/* 
 * TABLE: Cat_Cargo 
 */

CREATE TABLE Cat_Cargo(
    nId_Cargo      bigint          NOT NULL,
    cCargoGral     varchar(30)     NOT NULL,
    cCargoFem      varchar(30)     NOT NULL,
    cCargoMas      varchar(30)     NOT NULL,
    bHabilitado    bit             NOT NULL,
    dFecha_Alta    datetime2(7)    NOT NULL,
    dFecha_Baja    datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Cargo PRIMARY KEY CLUSTERED (nId_Cargo)
)
go



IF OBJECT_ID('Cat_Cargo') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Cargo >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Cargo >>>'
go

/* 
 * TABLE: Cat_UnidadResponsable 
 */

CREATE TABLE Cat_UnidadResponsable(
    nId_UnidadResponsable    bigint          NOT NULL,
    nId_Escuela              bigint          NOT NULL,
    nId_Cargo                bigint          NOT NULL,
    cUnidadResponsable       varchar(150)    NOT NULL,
    cUbicacion               varchar(100)    NOT NULL,
    cCorreo                  varchar(65)     NOT NULL,
    cTelefono                varchar(25)     NULL,
    bHabilitado              bit             NOT NULL,
    dFecha_Alta              datetime2(7)    NOT NULL,
    dFecha_Baja              datetime2(7)    NULL,
    CONSTRAINT PK_Cat_UnidadResponsable PRIMARY KEY CLUSTERED (nId_UnidadResponsable), 
    CONSTRAINT FK_CatUnidadResponsable_CatCargo FOREIGN KEY (nId_Cargo)
    REFERENCES Cat_Cargo(nId_Cargo),
    CONSTRAINT FK_CatUnidadResponsable_CatEscuela FOREIGN KEY (nId_Escuela)
    REFERENCES Cat_Escuela(nId_Escuela)
)
go



IF OBJECT_ID('Cat_UnidadResponsable') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_UnidadResponsable >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_UnidadResponsable >>>'
go

/* 
 * TABLE: Cat_Sexo 
 */

CREATE TABLE Cat_Sexo(
    nld_Sexo       tinyint         NOT NULL,
    cSexo          varchar(10)     NOT NULL,
    cSiglasSexo    varchar(3)      NOT NULL,
    bHabilitado    bit             NOT NULL,
    dFecha_Alta    datetime2(7)    NOT NULL,
    dFecha_Baja    datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Sexo PRIMARY KEY CLUSTERED (nld_Sexo)
)
go



IF OBJECT_ID('Cat_Sexo') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Sexo >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Sexo >>>'
go

/* 
 * TABLE: Tbl_Persona 
 */

CREATE TABLE Tbl_Persona(
    nId_Persona            bigint          NOT NULL,
    nld_Sexo               tinyint         NOT NULL,
    cNombre                varchar(40)     NOT NULL,
    cApellido_Paterno      varchar(40)     NOT NULL,
    cApellido_Materno      varchar(40)     NULL,
    cCURP                  varchar(18)     NOT NULL,
    cTelefono_Casa         varchar(25)     NULL,
    cTelefono_Celular      varchar(13)     NULL,
    cCorreo_Electronico    varchar(65)     NOT NULL,
    bHabilitado            bit             NOT NULL,
    dFecha_Alta            datetime2(7)    NOT NULL,
    dFecha_Baja            datetime2(7)    NULL,
    CONSTRAINT PK_Tbl_Persona PRIMARY KEY CLUSTERED (nId_Persona), 
    CONSTRAINT FK_TblPersona_CatSexo FOREIGN KEY (nld_Sexo)
    REFERENCES Cat_Sexo(nld_Sexo)
)
go



IF OBJECT_ID('Tbl_Persona') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Persona >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Persona >>>'
go

/* 
 * TABLE: Cat_Proyecto 
 */

CREATE TABLE Cat_Proyecto(
    nId_Proyecto               bigint           NOT NULL,
    nId_Programa               bigint           NOT NULL,
    nId_UnidadResponsable      bigint           NULL,
    nId_Persona_Responsable    bigint           NULL,
    cProyecto                  varchar(120)     NOT NULL,
    cClave_Proyecto            varchar(15)      NOT NULL,
    cObjetivo                  varchar(1000)    NOT NULL,
    cMeta                      varchar(1000)    NOT NULL,
    dFecha_Inicio_Vigencia     datetime2(7)     NOT NULL,
    dFecha_Fin_Vigencia        datetime2(7)     NOT NULL,
    bHabilitado                bit              NOT NULL,
    dFecha_Alta                datetime2(7)     NOT NULL,
    dFecha_Baja                datetime2(7)     NULL,
    CONSTRAINT PK_Cat_Proyecto PRIMARY KEY CLUSTERED (nId_Proyecto), 
    CONSTRAINT FK_CatProyecto_CatPrograma FOREIGN KEY (nId_Programa)
    REFERENCES Cat_Programa(nId_Programa),
    CONSTRAINT FK_CatProyecto_CatUnidadResponsable FOREIGN KEY (nId_UnidadResponsable)
    REFERENCES Cat_UnidadResponsable(nId_UnidadResponsable),
    CONSTRAINT FK_CatProyecto_TblPersona FOREIGN KEY (nId_Persona_Responsable)
    REFERENCES Tbl_Persona(nId_Persona)
)
go



IF OBJECT_ID('Cat_Proyecto') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Proyecto >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Proyecto >>>'
go

/* 
 * TABLE: Cat_Proyecto_Carrera 
 */

CREATE TABLE Cat_Proyecto_Carrera(
    nId_Proyecto_Carrera    bigint          NOT NULL,
    nId_Proyecto            bigint          NOT NULL,
    nId_Carrera             bigint          NOT NULL,
    bHabilitado             bit             NOT NULL,
    dFecha_Alta             datetime2(7)    NOT NULL,
    dFecha_Baja             datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Proyecto_Carrera PRIMARY KEY CLUSTERED (nId_Proyecto_Carrera), 
    CONSTRAINT FK_CatProyectoCarrera_CatCarrera FOREIGN KEY (nId_Carrera)
    REFERENCES Cat_Carrera(nId_Carrera),
    CONSTRAINT FK_CatProyectoCarrera_CatProyecto FOREIGN KEY (nId_Proyecto)
    REFERENCES Cat_Proyecto(nId_Proyecto)
)
go



IF OBJECT_ID('Cat_Proyecto_Carrera') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Proyecto_Carrera >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Proyecto_Carrera >>>'
go

/* 
 * TABLE: Cat_ActividadMacro 
 */

CREATE TABLE Cat_ActividadMacro(
    nId_ActividadMacro_Proyecto    bigint           NOT NULL,
    nId_Proyecto_Carrera           bigint           NOT NULL,
    cActividad_Macro               varchar(1000)    NOT NULL,
    nOrden                         tinyint          NOT NULL,
    bHabilitado                    bit              NOT NULL,
    dFecha_Alta                    datetime2(7)     NOT NULL,
    dFecha_Baja                    datetime2(7)     NULL,
    CONSTRAINT PK_Cat_ActividadMacro_Proyecto PRIMARY KEY CLUSTERED (nId_ActividadMacro_Proyecto), 
    CONSTRAINT FK_CatActividadMacroProyecto_CatProyectoCarrera FOREIGN KEY (nId_Proyecto_Carrera)
    REFERENCES Cat_Proyecto_Carrera(nId_Proyecto_Carrera)
)
go



IF OBJECT_ID('Cat_ActividadMacro') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_ActividadMacro >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_ActividadMacro >>>'
go

/* 
 * TABLE: Cat_Estatus_Asignacion 
 */

CREATE TABLE Cat_Estatus_Asignacion(
    nId_Estatus_Asignacion    tinyint         NOT NULL,
    cEstatus_Asignacion       varchar(25)     NOT NULL,
    bHabilitado               bit             NOT NULL,
    dFecha_Alta               datetime2(7)    NOT NULL,
    dFecha_Baja               datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Estatus_Asignacion PRIMARY KEY CLUSTERED (nId_Estatus_Asignacion)
)
go



IF OBJECT_ID('Cat_Estatus_Asignacion') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Estatus_Asignacion >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Estatus_Asignacion >>>'
go

/* 
 * TABLE: Cat_Estatus_Informe 
 */

CREATE TABLE Cat_Estatus_Informe(
    nId_Estatus_Informe    tinyint         NOT NULL,
    cEstatus_Informe       varchar(35)     NOT NULL,
    cDescripcion           varchar(250)    NOT NULL,
    bHabilitado            bit             NOT NULL,
    dFecha_Alta            datetime2(7)    NOT NULL,
    dFecha_Baja            datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Estatus_Informe PRIMARY KEY CLUSTERED (nId_Estatus_Informe)
)
go



IF OBJECT_ID('Cat_Estatus_Informe') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Estatus_Informe >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Estatus_Informe >>>'
go

/* 
 * TABLE: Cat_Estatus_Prestador 
 */

CREATE TABLE Cat_Estatus_Prestador(
    nId_Estatus_Prestador    tinyint         NOT NULL,
    cEstatus_Prestador       varchar(25)     NOT NULL,
    bHabilitado              bit             NOT NULL,
    dFecha_Alta              datetime2(7)    NOT NULL,
    dFecha_Baja              datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Estatus_Prestador PRIMARY KEY CLUSTERED (nId_Estatus_Prestador)
)
go



IF OBJECT_ID('Cat_Estatus_Prestador') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Estatus_Prestador >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Estatus_Prestador >>>'
go

/* 
 * TABLE: Cat_Perfil 
 */

CREATE TABLE Cat_Perfil(
    nId_Perfil     tinyint         NOT NULL,
    cPerfil        varchar(100)    NOT NULL,
    bHabilitado    bit             NOT NULL,
    dFecha_Alta    datetime2(7)    NOT NULL,
    dFecha_Baja    datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Perfil PRIMARY KEY CLUSTERED (nId_Perfil)
)
go



IF OBJECT_ID('Cat_Perfil') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Perfil >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Perfil >>>'
go

/* 
 * TABLE: Cat_Servicio 
 */

CREATE TABLE Cat_Servicio(
    nId_Servicio    bigint          NOT NULL,
    cServicio       varchar(100)    NOT NULL,
    bHabilitado     bit             NOT NULL,
    dFecha_Alta     datetime2(7)    NOT NULL,
    dFecha_Baja     datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Servicio PRIMARY KEY CLUSTERED (nId_Servicio)
)
go



IF OBJECT_ID('Cat_Servicio') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Servicio >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Servicio >>>'
go

/* 
 * TABLE: Cat_Perfil_Servicio 
 */

CREATE TABLE Cat_Perfil_Servicio(
    nId_Perfil_Servicio    bigint          NOT NULL,
    nId_Perfil             tinyint         NOT NULL,
    nId_Servicio           bigint          NOT NULL,
    bHabilitado            bit             NOT NULL,
    dFecha_Alta            datetime2(7)    NOT NULL,
    dFecha_Baja            datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Perfil_Servicio PRIMARY KEY CLUSTERED (nId_Perfil_Servicio), 
    CONSTRAINT FK_CatPerfilServicio_CatPerfil FOREIGN KEY (nId_Perfil)
    REFERENCES Cat_Perfil(nId_Perfil),
    CONSTRAINT FK_CatPerfilServicio_CatServicio FOREIGN KEY (nId_Servicio)
    REFERENCES Cat_Servicio(nId_Servicio)
)
go



IF OBJECT_ID('Cat_Perfil_Servicio') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Perfil_Servicio >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Perfil_Servicio >>>'
go

/* 
 * TABLE: Tbl_Usuario 
 */

CREATE TABLE Tbl_Usuario(
    nIdUsuario     bigint          NOT NULL,
    nId_Persona    bigint          NOT NULL,
    cUsuario       varchar(20)     NOT NULL,
    cPassword      varchar(64)     NOT NULL,
    bHabilitado    bit             NOT NULL,
    dFecha_Alta    datetime2(7)    NOT NULL,
    dFecha_Baja    datetime2(7)    NULL,
    CONSTRAINT PK_Tbl_Usuario PRIMARY KEY CLUSTERED (nIdUsuario), 
    CONSTRAINT FK_TblUsuario_TblPersona FOREIGN KEY (nId_Persona)
    REFERENCES Tbl_Persona(nId_Persona)
)
go



IF OBJECT_ID('Tbl_Usuario') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Usuario >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Usuario >>>'
go

/* 
 * TABLE: Cat_Perfil_Usuario 
 */

CREATE TABLE Cat_Perfil_Usuario(
    nId_Perfil_Usuario    bigint          NOT NULL,
    nIdUsuario            bigint          NOT NULL,
    nId_Perfil            tinyint         NOT NULL,
    bHabilitado           bit             NOT NULL,
    dFecha_Alta           datetime2(7)    NOT NULL,
    dFecha_Baja           datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Perfil_Usuario PRIMARY KEY CLUSTERED (nId_Perfil_Usuario), 
    CONSTRAINT FK_CatPerfilUsuario_CatPerfil FOREIGN KEY (nId_Perfil)
    REFERENCES Cat_Perfil(nId_Perfil),
    CONSTRAINT FK_CatPerfilUsuario_TblUsuario FOREIGN KEY (nIdUsuario)
    REFERENCES Tbl_Usuario(nIdUsuario)
)
go



IF OBJECT_ID('Cat_Perfil_Usuario') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Perfil_Usuario >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Perfil_Usuario >>>'
go

/* 
 * TABLE: Cat_Proceso_Informe 
 */

CREATE TABLE Cat_Proceso_Informe(
    nId_Proceso_Informe          tinyint         NOT NULL,
    nId_EstatusInforme_Inicio    tinyint         NOT NULL,
    nId_EstatusInforme_Final     tinyint         NOT NULL,
    bHabilitado                  bit             NOT NULL,
    dFecha_Alta                  datetime2(7)    NOT NULL,
    dFecha_Baja                  datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Proceso_Informe PRIMARY KEY CLUSTERED (nId_Proceso_Informe), 
    CONSTRAINT FK_CatProcesoInforme_FINAL_CatEstatusInforme FOREIGN KEY (nId_EstatusInforme_Final)
    REFERENCES Cat_Estatus_Informe(nId_Estatus_Informe),
    CONSTRAINT FK_CatProcesoInforme_INICIO_CatEstatusInforme FOREIGN KEY (nId_EstatusInforme_Inicio)
    REFERENCES Cat_Estatus_Informe(nId_Estatus_Informe)
)
go



IF OBJECT_ID('Cat_Proceso_Informe') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Proceso_Informe >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Proceso_Informe >>>'
go

/* 
 * TABLE: Cat_Proyecto_Encargado 
 */

CREATE TABLE Cat_Proyecto_Encargado(
    nld_Proyecto_Encargado    bigint          NOT NULL,
    nId_Proyecto              bigint          NOT NULL,
    nId_Persona_Encargado     bigint          NOT NULL,
    bHabilitado               bit             NOT NULL,
    dFecha_Alta               datetime2(7)    NOT NULL,
    dFecha_Baja               datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Proyecto_Encargado PRIMARY KEY CLUSTERED (nld_Proyecto_Encargado), 
    CONSTRAINT FK_CatProyectoEncargado_CatProyecto FOREIGN KEY (nId_Proyecto)
    REFERENCES Cat_Proyecto(nId_Proyecto),
    CONSTRAINT FK_CatProyectoEncargado_TblPersona FOREIGN KEY (nId_Persona_Encargado)
    REFERENCES Tbl_Persona(nId_Persona)
)
go



IF OBJECT_ID('Cat_Proyecto_Encargado') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Proyecto_Encargado >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Proyecto_Encargado >>>'
go

/* 
 * TABLE: Cat_TipoPersona 
 */

CREATE TABLE Cat_TipoPersona(
    nId_TipoPersona    tinyint         NOT NULL,
    cTipoPersona       varchar(15)     NOT NULL,
    bHabilitado        bit             NOT NULL,
    dFecha_Alta        datetime2(7)    NOT NULL,
    dFecha_Baja        datetime2(7)    NULL,
    CONSTRAINT PK_Cat_TipoPersona PRIMARY KEY CLUSTERED (nId_TipoPersona)
)
go



IF OBJECT_ID('Cat_TipoPersona') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_TipoPersona >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_TipoPersona >>>'
go

/* 
 * TABLE: Cat_Titulo 
 */

CREATE TABLE Cat_Titulo(
    nId_Titulo     tinyint         NOT NULL,
    cTitulo        varchar(10)     NOT NULL,
    bHabilitado    bit             NOT NULL,
    dFecha_Alta    datetime2(7)    NOT NULL,
    dFecha_Baja    datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Titulo PRIMARY KEY CLUSTERED (nId_Titulo)
)
go



IF OBJECT_ID('Cat_Titulo') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Titulo >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Titulo >>>'
go

/* 
 * TABLE: Tbl_Administrativo 
 */

CREATE TABLE Tbl_Administrativo(
    nId_Persona_Administrativo    bigint          NOT NULL,
    nId_TipoPersona               tinyint         NOT NULL,
    nId_UnidadResponsable         bigint          NOT NULL,
    nId_Titulo                    tinyint         NOT NULL,
    bHabilitado                   bit             NOT NULL,
    dFecha_Alta                   datetime2(7)    NOT NULL,
    dFecha_Baja                   datetime2(7)    NULL,
    CONSTRAINT PK_Tbl_Administrativo PRIMARY KEY CLUSTERED (nId_Persona_Administrativo), 
    CONSTRAINT FK_TblAdministrativo_CatTipoPersona FOREIGN KEY (nId_TipoPersona)
    REFERENCES Cat_TipoPersona(nId_TipoPersona),
    CONSTRAINT FK_TblAdministrativo_CatTitulo FOREIGN KEY (nId_Titulo)
    REFERENCES Cat_Titulo(nId_Titulo),
    CONSTRAINT FK_TblAdministrativo_CatUnidadResponsable FOREIGN KEY (nId_UnidadResponsable)
    REFERENCES Cat_UnidadResponsable(nId_UnidadResponsable),
    CONSTRAINT FK_TblAdministrativo_TblPersona FOREIGN KEY (nId_Persona_Administrativo)
    REFERENCES Tbl_Persona(nId_Persona)
)
go



IF OBJECT_ID('Tbl_Administrativo') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Administrativo >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Administrativo >>>'
go

/* 
 * TABLE: Cat_Responsable_Unidad 
 */

CREATE TABLE Cat_Responsable_Unidad(
    nId_Responsable_Unidad        bigint          NOT NULL,
    nId_UnidadResponsable         bigint          NOT NULL,
    nId_Persona_Administrativo    bigint          NOT NULL,
    bHabilitado                   bit             NOT NULL,
    dFecha_Alta                   datetime2(7)    NOT NULL,
    dFecha_Baja                   datetime2(7)    NULL,
    CONSTRAINT PK_Cat_Responsable_Unidad PRIMARY KEY CLUSTERED (nId_Responsable_Unidad), 
    CONSTRAINT FK_CatResponsableUnidad_CatUnidadResponsable FOREIGN KEY (nId_UnidadResponsable)
    REFERENCES Cat_UnidadResponsable(nId_UnidadResponsable),
    CONSTRAINT FK_CatResponsableUnidad_TblAdministrativo FOREIGN KEY (nId_Persona_Administrativo)
    REFERENCES Tbl_Administrativo(nId_Persona_Administrativo)
)
go



IF OBJECT_ID('Cat_Responsable_Unidad') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_Responsable_Unidad >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_Responsable_Unidad >>>'
go

/* 
 * TABLE: Cat_TipoActividad 
 */

CREATE TABLE Cat_TipoActividad(
    nId_TipoActividad    tinyint         NOT NULL,
    cTipoActividad       varchar(15)     NOT NULL,
    bHabilitado          bit             NOT NULL,
    dFecha_Alta          datetime2(7)    NOT NULL,
    dFecha_Baja          datetime2(7)    NULL,
    CONSTRAINT PK_Cat_TipoActividad PRIMARY KEY CLUSTERED (nId_TipoActividad)
)
go



IF OBJECT_ID('Cat_TipoActividad') IS NOT NULL
    PRINT '<<< CREATED TABLE Cat_TipoActividad >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Cat_TipoActividad >>>'
go

/* 
 * TABLE: Tbl_Prestador 
 */

CREATE TABLE Tbl_Prestador(
    nId_Prestador            bigint          NOT NULL,
    nId_Persona              bigint          NOT NULL,
    nId_Escuela              bigint          NOT NULL,
    nId_Carrera              bigint          NOT NULL,
    nId_Estatus_Prestador    tinyint         NOT NULL,
    cNumero_Cuenta           varchar(9)      NOT NULL,
    bHabilitado              bit             NOT NULL,
    dFecha_Alta              datetime2(7)    NOT NULL,
    dFecha_Baja              datetime2(7)    NULL,
    CONSTRAINT PK_Tbl_Prestador PRIMARY KEY CLUSTERED (nId_Prestador), 
    CONSTRAINT FK_TblPrestador_CatCarrera FOREIGN KEY (nId_Carrera)
    REFERENCES Cat_Carrera(nId_Carrera),
    CONSTRAINT FK_TblPrestador_CatEscuela FOREIGN KEY (nId_Escuela)
    REFERENCES Cat_Escuela(nId_Escuela),
    CONSTRAINT FK_TblPrestador_CatEstatusPrestador FOREIGN KEY (nId_Estatus_Prestador)
    REFERENCES Cat_Estatus_Prestador(nId_Estatus_Prestador),
    CONSTRAINT FK_TblPrestador_TblPersona FOREIGN KEY (nId_Persona)
    REFERENCES Tbl_Persona(nId_Persona)
)
go



IF OBJECT_ID('Tbl_Prestador') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Prestador >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Prestador >>>'
go

/* 
 * TABLE: Tbl_Asignacion 
 */

CREATE TABLE Tbl_Asignacion(
    nId_Asignacion              bigint          NOT NULL,
    nId_Prestador               bigint          NOT NULL,
    nId_Proyecto                bigint          NOT NULL,
    nld_Proyecto_Encargado      bigint          NOT NULL,
    nId_Estatus_Asignacion      tinyint         NOT NULL,
    dFecha_Inicio_Asignacion    datetime2(7)    NOT NULL,
    dFecha_Fin_Asignacion       datetime2(7)    NULL,
    nHorasPorAplicar            smallint        NOT NULL,
    bHabilitado                 bit             NOT NULL,
    dFecha_Alta                 datetime2(7)    NOT NULL,
    dFecha_Baja                 datetime2(7)    NULL,
    CONSTRAINT PK_Tbl_Asignacion PRIMARY KEY CLUSTERED (nId_Asignacion), 
    CONSTRAINT FK_Tbl_Asignacion_CatEstatusAsignacion FOREIGN KEY (nId_Estatus_Asignacion)
    REFERENCES Cat_Estatus_Asignacion(nId_Estatus_Asignacion),
    CONSTRAINT FK_TblAsignacion_CatProyecto FOREIGN KEY (nId_Proyecto)
    REFERENCES Cat_Proyecto(nId_Proyecto),
    CONSTRAINT FK_TblAsignacion_CatProyectoEncargado FOREIGN KEY (nld_Proyecto_Encargado)
    REFERENCES Cat_Proyecto_Encargado(nld_Proyecto_Encargado),
    CONSTRAINT FK_TblAsignacion_TblPrestador FOREIGN KEY (nId_Prestador)
    REFERENCES Tbl_Prestador(nId_Prestador)
)
go



IF OBJECT_ID('Tbl_Asignacion') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Asignacion >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Asignacion >>>'
go

/* 
 * TABLE: Tbl_Actividad_Asignacion 
 */

CREATE TABLE Tbl_Actividad_Asignacion(
    nId_Actividad              bigint          NOT NULL,
    nId_Asignacion             bigint          NOT NULL,
    dFecha_Inicio_Actividad    datetime2(7)    NOT NULL,
    dFecha_Fin_Actividad       datetime2(7)    NULL,
    cDescripcion               varchar(500)    NOT NULL,
    nHorasAplicadas            smallint        NOT NULL,
    bHabilitado                bit             NOT NULL,
    dFecha_Actualizacion       datetime2(7)    NULL,
    dFecha_Alta                datetime2(7)    NOT NULL,
    dFecha_Baja                datetime2(7)    NULL,
    CONSTRAINT PK_Tbl_Actividad_Asignacion PRIMARY KEY CLUSTERED (nId_Actividad), 
    CONSTRAINT FK_TblActividadAsignacion_TblAsignacion FOREIGN KEY (nId_Asignacion)
    REFERENCES Tbl_Asignacion(nId_Asignacion)
)
go



IF OBJECT_ID('Tbl_Actividad_Asignacion') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Actividad_Asignacion >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Actividad_Asignacion >>>'
go

/* 
 * TABLE: Tbl_Informe 
 */

CREATE TABLE Tbl_Informe(
    nId_Informe              bigint           NOT NULL,
    nId_Asignacion           bigint           NOT NULL,
    nId_Estatus_Informe      tinyint          NOT NULL,
    cAportacion              varchar(1000)    NOT NULL,
    cPoblacionBeneficiada    varchar(1000)    NOT NULL,
    cObservaciones           varchar(1000)    NOT NULL,
    bHabilitado              bit              NOT NULL,
    dFecha_Registro          datetime2(7)     NOT NULL,
    dFecha_Actualizacion     datetime2(7)     NULL,
    dFecha_VoBo              datetime2(7)     NULL,
    dFecha_Autorizado        datetime2(7)     NULL,
    dFecha_Baja              datetime2(7)     NULL,
    CONSTRAINT PK_Tbl_Informe PRIMARY KEY CLUSTERED (nId_Informe), 
    CONSTRAINT FK_TblInforme_CatEstatusInforme FOREIGN KEY (nId_Estatus_Informe)
    REFERENCES Cat_Estatus_Informe(nId_Estatus_Informe),
    CONSTRAINT FK_TblInforme_TblAsignacion FOREIGN KEY (nId_Asignacion)
    REFERENCES Tbl_Asignacion(nId_Asignacion)
)
go



IF OBJECT_ID('Tbl_Informe') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Informe >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Informe >>>'
go

/* 
 * TABLE: Tbl_Actividad_Informe 
 */

CREATE TABLE Tbl_Actividad_Informe(
    nId_Actividad_Informe    bigint           NOT NULL,
    nId_Informe              bigint           NOT NULL,
    nId_TipoActividad        tinyint          NOT NULL,
    cDescripcion             varchar(1000)    NOT NULL,
    bHabilitado              bit              NOT NULL,
    dFecha_Alta              datetime2(7)     NOT NULL,
    dFecha_Baja              datetime2(7)     NULL,
    CONSTRAINT PK_Tbl_Actividad_Informe PRIMARY KEY CLUSTERED (nId_Actividad_Informe), 
    CONSTRAINT FK_TblActividadInforme_CatTipoActividad FOREIGN KEY (nId_TipoActividad)
    REFERENCES Cat_TipoActividad(nId_TipoActividad),
    CONSTRAINT FK_TblActividadInforme_TblInforme FOREIGN KEY (nId_Informe)
    REFERENCES Tbl_Informe(nId_Informe)
)
go



IF OBJECT_ID('Tbl_Actividad_Informe') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Actividad_Informe >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Actividad_Informe >>>'
go

/* 
 * TABLE: Tbl_Observacion_Informe 
 */

CREATE TABLE Tbl_Observacion_Informe(
    nId_Observaciones    bigint           NOT NULL,
    nId_Informe          bigint           NOT NULL,
    cObservacion         varchar(2000)    NOT NULL,
    bHabilitado          bit              NOT NULL,
    dFecha_Registro      datetime2(7)     NOT NULL,
    dFecha_Baja          datetime2(7)     NULL,
    CONSTRAINT PK_Tbl_Observacion_Informe PRIMARY KEY CLUSTERED (nId_Observaciones), 
    CONSTRAINT FK_TblObservacionInforme_TblInforme FOREIGN KEY (nId_Informe)
    REFERENCES Tbl_Informe(nId_Informe)
)
go



IF OBJECT_ID('Tbl_Observacion_Informe') IS NOT NULL
    PRINT '<<< CREATED TABLE Tbl_Observacion_Informe >>>'
ELSE
    PRINT '<<< FAILED CREATING TABLE Tbl_Observacion_Informe >>>'
go

